<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
    <meta http-equiv="content-type" content="text/html; charset=utf-8"/>
    <title>Projekt IIS</title>
    <style type="text/css">
    	table { border-collapse: collapse; }
    	td, th { border: 1px solid black; padding: 0.3em 0.5em; text-align: left; }
    	dt { font-weight: bold; margin-top: 0.5em; }
    </style>
</head>
<body>

<!-- Zkontrolujte prosím nastavení kódování v hlavičce dokumentu 
     podle použitého editoru -->

<h1>Dietní kuchyně</h1> <!-- Nahradte názvem svého zadání -->

<dl>
	<dt>Autoři</dt>
	<dd>Matúš Vančo 
	    <a href="mailto:xvanco02@stud.fit.vutbr.cz">xvanco02@stud.fit.vutbr.cz</a> 
	</dd>
	<dd>Tomáš Žigárdi
	    <a href="mailto:xzigar00@stud.fit.vutbr.cz">xzigar00@stud.fit.vutbr.cz</a>  
	</dd>
	<dt>URL aplikace</dt>
	<dd><a href="http://matusi.eu/iis/">http://matusi.eu/iis/</a></dd>
</dl>

<h2>Uživatelé systému pro testování</h2>

<table border="1">
<tr>
<th>Rola</th>
<th>Užívateľské meno</th>
<th>Heslo</th>
<th>Kompetencie</th>
</tr>
<tr>
<td>Administrátor</td>
<td>admin</td>
<td>heslo</td>
<td>Registrácia zdravotného personálu, pridávanie jedla</td>
</tr>
<tr>
<td>Doktor</td>
<td>xdzuro00</td>
<td>matej</td>
<td>Registrácia pacienta, pridávanie diéty, vypísanie jedálneho lístku,</br>vypísanie informácii o pacientovi, objednanie jedla pacientovi, upravenie diéty</td>
</tr>
<tr>
<td>Zdravotná sestra</td>
<td>xhrask00</td>
<td>filomena</td>
<td>Vypísanie jedálneho lístku, vypísanie informácii o pacientovi,</br>objednanie jedla pacientovi, upravenie diéty</td>
</tr>
<tr>
<td>Pacient</td>
<td>xliban00</td>
<td>andrej</td>
<td>Vypísanie jedálneho lístku</td>
</tr>


</table>

<h2>Implementace</h2>
<p>Informačný systém bol implementovaný pomocou frameworku CodeIgniter v. 2.1.0. Pri implementácii sa použila architektúra Model-view-controller, teda súbory s riadiacimi funkciami sú uložené v priečinku &bdquo;application\controllers\&rdquo;, funkcie na prácu s dátami v databázach v  &bdquo;application\models\&rdquo; a funkcie, ktoré zabezpečujú zobrazenie informácií pre používateľov v &bdquo;application\views\&rdquo;</p>
<p>Pacienti v nemocnici môžu podľa modelu prípadu použitia vypísať jedálny lístok. Na to slúži funkcia <i>vypis</i> v &bdquo;application\controllers\jedalnicek.php&rdquo;. Táto funkcia volá funkciu <i>povolene_jedla</i> z &bdquo;application\models\jedalnicek_model&rdquo;, ktorá vráti zoznam povolených jedál pre daného pacienta, podľa jeho diéty. Jedlá, ktoré obsahujú ingrediencie, ktoré sú pre pacientovu diétu zakázané, sa pacientovy nezobrazia.</p>
<p>Zakázané ingrediencie pre daného pacienta sú vypísané spolu s informáciami o pacientovi. Tieto ingrediencie sú získané z databázy pomocou funkcie <i>ingrediencie</i> v &bdquo;application\models\dieta_model&rdquo;. Táto funckia má ako parameter rodné číslo pacienta, ktoré slúži ako jednoznačný identifikátor pacientov.</p>
<p>Pri kliknutí na názov jedla sa pacientovi zobrazia ingrediencie, ktoré jedlo obsahuje. na to slúži funkcia <i></i></p>
</p>Podla diagramu prípadu použtia by mali byť pacienti schopný vypísať zoznam odporučených ingrediencií. Táto časť bola pri návrhnu systému odstránená pre zanedbateľnú využitelnosť.</p>
<p>Pri prihlásení zdravotného personálu(sestra/doktor) do systému sa zobrazí stránka so zoznamom pacientov oddelenia, v ktorom pracuje daný personál. Zdravotná sestra aj doktor môžu pridať na oddelenie nového pacienta. To je zabezpečené funkciou <i>register_pacienta</i> v súbore &bdquo;application\controllers\project.php&rdquo;. Doktorovi sa zobrazí aj zoznam diét a možnosť pridať novú, pomocou <i>pridaj</i> v &bdquo;application\controllers\dieta.php&rdquo;.</p> 
Pri kliknutí na jedného z pacientov sa zobrazia informácie a jedálniček pre daného pacienta, rovnako ako keby sa prihásil pacient. Avšak podla typu zdravotného personálu sú na výber daľšie možnosti. Sestra má možnosť objednať jedlo, ktoré si pacient vybral. Na to slúži funkcia <i></i> v. Ďalej môže zrušiť objednávku pomocou <i></i> v .
<p>Doktor môže na stránke pacienta okrem objednania jedla, aj upraviť pacientovu diagnózu pomocou funckie <i>zmena_diagnozy</i> v &bdquo;application\models\diagnoza_model&rdquo;. Zmeniť pacientovu diétu prostredníctvom funcie <i>prirad_inu_dietu</i> v &bdquo;application\models\jedalnicek_model&rdquo;. Zmeniť zakázané ingrediencie diéty, ktorú ma pacient naordinovanú pomocou <i></i> a odregistrovať pacienta z informačného systému sadou funkcií zo súboru &bdquo;application\models\diagnoza_model&rdquo;.</p>
<p>V diagrame prípadu použitia môže aj sestra aj doktor upraviť diagnózu pacienta, určiť mu diagnózu, upraviť diety a vypísať zoznam diét. Z týchto možností môže v informačnom systéme sestra iba určiť diagnózu, pri registrácii pacienta. Ostatné možnosti má iba doktor. V diagrame má možnosť naordinovať diétu iba doktor. V informačnom systéme má túto možnosť aj sestra a to pri registrácii pacienta. Tieto zmeny v návrhu systému vznikli z dôvodu väčšieho priblíženia informačného systému realite.</p>
<p>Ďaľšou zmenou v systéme oproti diagramu je odstraňovanie diét, to je v Informačnom systéme nemožné.</p>
<p>Poslednou rolou v systéme je administrátor. Ten má možnost pridať člena zdravotníckeho pesronálu. To zabezpečuje funkcia <i>register_personalu</i> v súbore &bdquo;application\controllers\project.php&rdquo;.</p> Vymazanie personálu funkciou <i>odstranit_personal</i> v &bdquo;application\models\odstranenie_personalu_model&rdquo;. Poslednou možnosťou administrátora je pridanie jedla pomocou <i></i> v .</p>
<p>Jednotlivý používatelia systému sú po určitej dobe nečinnosti automaticky odhlásení. Zabezpečuje to script v súbore &bdquo;templates\header.php&rdquo;</p>

<h2>Instalace</h2>
Inštalácia tohto projektu na server sa realizuje v 3 krokoch. Nahranie súborov samotného frameworku CodeIgniter prostredníctvom protokolu FTP, nahranie aplikačných súborov projektu na server a vytvorenie potrebných databázových tabuliek na databázovom servery. Súbory frameworku sú dostupné na stiahnutie na oficiálnej stránke frameworku, kedže sa jedná o open-source projekt. Na vytvorenie databázových tabuliek je pripravený SQL skript v súbore so samotným projektom. Databáza nepotrebuje žiadnu zvláštnu konfiguráciu pre správne fungovanie projektu. Postačí implicitné nastavenie databázy. Pre projekt je požadované aby bežal na PHP servery s verziou aspoň 4. Na strane klienta musí byť v internetovom prehliadači povolené  vykonávanie JavaScriptu, musí byť povolené používanie cookies a tiež by mal podporovať kaskádové štýly.

<h2>Známé problémy</h2>
<p>Zde popište, které body zadání (IDS a IIS) nejsou implementovány a z jakého důvodu. Např. &bdquo;Z časových důvodů nebyl implementován import XML.&rdquo; Pomůžete tím zrychlit opravování, když neimplementované funkce nebudeme muset dlouze hledat.</p>

</body>
</html>
